using System;
using System.Collections.Generic;
using ns26;
using ns27;

namespace Triton.Game.Mapping
{
	[Attribute38("MimironsHead")]
	public class MimironsHead : SuperSpell
	{
		public GameObject m_root => method_3<GameObject>("m_root");

		public GameObject m_highPosBone => method_3<GameObject>("m_highPosBone");

		public GameObject m_minionPosBone => method_3<GameObject>("m_minionPosBone");

		public GameObject m_background => method_3<GameObject>("m_background");

		public GameObject m_minionElectricity => method_3<GameObject>("m_minionElectricity");

		public GameObject m_minionGlow => method_3<GameObject>("m_minionGlow");

		public GameObject m_mimironNegative => method_3<GameObject>("m_mimironNegative");

		public GameObject m_mimironFlare => method_3<GameObject>("m_mimironFlare");

		public GameObject m_mimironGlow => method_3<GameObject>("m_mimironGlow");

		public GameObject m_mimironElectricity => method_3<GameObject>("m_mimironElectricity");

		public Spell m_voltSpawnOverrideSpell => method_3<Spell>("m_voltSpawnOverrideSpell");

		public string m_perMinionSound => method_4("m_perMinionSound");

		public List<string> m_startSounds => method_3<Class249>("m_startSounds")?.method_25();

		public Card m_volt => method_3<Card>("m_volt");

		public Card m_mimiron => method_3<Card>("m_mimiron");

		public List<Card> m_mechMinions => method_3<Class271<Card>>("m_mechMinions")?.method_25();

		public Transform m_voltParent => method_3<Transform>("m_voltParent");

		public Color m_clear => method_2<Color>("m_clear");

		public bool m_isNegFlash => method_2<bool>("m_isNegFlash");

		public float m_flashDelay => method_2<float>("m_flashDelay");

		public float m_mimironHighTime => method_2<float>("m_mimironHighTime");

		public float m_minionHighTime => method_2<float>("m_minionHighTime");

		public float m_sparkDelay => method_2<float>("m_sparkDelay");

		public float m_absorbTime => method_2<float>("m_absorbTime");

		public float m_glowTime => method_2<float>("m_glowTime");

		public PowerTaskList m_waitForTaskList => method_3<PowerTaskList>("m_waitForTaskList");

		public MimironsHead(IntPtr address, string className)
			: base(address, className)
		{
		}

		public MimironsHead(IntPtr address)
			: this(address, "MimironsHead")
		{
		}

		public new bool AddPowerTargets()
		{
			return method_11<bool>("AddPowerTargets", Array.Empty<object>());
		}

		public new void OnAction(SpellStateType prevStateType)
		{
			method_8("OnAction", prevStateType);
		}

		public void TransformMinions()
		{
			method_8("TransformMinions");
		}

		public void MinionCleanup(GameObject minion)
		{
			method_8("MinionCleanup", minion);
		}

		public void FadeInBackground()
		{
			method_8("FadeInBackground");
		}

		public void SetGlow(Material glowMat, float newVal, string colorVal)
		{
			method_8("SetGlow", glowMat, newVal, colorVal);
		}

		public void MimironPowerUp()
		{
			method_8("MimironPowerUp");
		}

		public void AbsorbMinions()
		{
			method_8("AbsorbMinions");
		}

		public void FlareMimiron()
		{
			method_8("FlareMimiron");
		}

		public void UnflareMimiron()
		{
			method_8("UnflareMimiron");
		}

		public void FadeOutBackground()
		{
			method_8("FadeOutBackground");
		}

		public void DestroyMinions()
		{
			method_8("DestroyMinions");
		}

		public void RaiseVolt()
		{
			method_8("RaiseVolt");
		}

		public void DropV07tron()
		{
			method_8("DropV07tron");
		}

		public void Finish()
		{
			method_8("Finish");
		}
	}
}
